/**
 * 
 */
package neptune.web.client.model;

import java.util.ArrayList;

import com.google.gwt.user.client.rpc.IsSerializable;

/**
 * Classe di supporto per il trasporto di informazioni generali riguardo gli
 * utenti
 * 
 * @author Roberto Bifulco [info@robertobifulco.it, robertobifulco.it]
 * 
 */
public class ApplicationGenericInfo implements IsSerializable {

        // Ruoli definiti in seno al sistema (tramite IAS)
        private String[] definedRoles;
        // Numero totale di utenti del sistema;
        private int userNumber;
        // Numero totale di esperimenti definiti sul sistema
        private int experimentsNumber;
        // Il ruolo dell'utente attualmente loggato
        private String actualUserRole;
        // Elenco dei VmTemplates definiti sul server
        private ArrayList<SerializableVmTemplate> vmTemplates = new ArrayList<SerializableVmTemplate>(
                        0);

        /**
         * @return the definedRoles
         */
        public String[] getDefinedRoles() {
                return definedRoles;
        }

        /**
         * @param definedRoles
         *            the definedRoles to set
         */
        public void setDefinedRoles(String[] definedRoles) {
                this.definedRoles = definedRoles;
        }

        /**
         * @return the userNumber
         */
        public int getUserNumber() {
                return userNumber;
        }

        /**
         * @param userNumber
         *            the userNumber to set
         */
        public void setUserNumber(int userNumber) {
                this.userNumber = userNumber;
        }

        /**
         * @return the experimentsNumber
         */
        public int getExperimentsNumber() {
                return experimentsNumber;
        }

        /**
         * @param experimentsNumber
         *            the experimentsNumber to set
         */
        public void setExperimentsNumber(int experimentsNumber) {
                this.experimentsNumber = experimentsNumber;
        }

        /**
         * @param actualUserRole
         *            the actualUserRole to set
         */
        public void setActualUserRole(String actualUserRole) {
                this.actualUserRole = actualUserRole;
        }

        /**
         * @return the actualUserRole
         */
        public String getActualUserRole() {
                return actualUserRole;
        }

        /**
         * @param vmTemplates
         *            the vmTemplates to set
         */
        public void setVmTemplates(ArrayList<SerializableVmTemplate> vmTemplates) {
                this.vmTemplates = vmTemplates;
        }

        /**
         * @return the vmTemplates
         */
        public ArrayList<SerializableVmTemplate> getVmTemplates() {
                return vmTemplates;
        }

}

